package com.zx;

import java.util.HashMap;
import java.util.Map;

/**
 * @ProjectName: ybxy6
 * @Titile: MapPractice
 * @Author: Muelsyse
 * @Description: TODO
 */
public class MapPractice {
    public static void main(String[] args) {
        Map<String,String> data = new HashMap();
        data.put("李南","A");
        data.put("小赵","S");
        data.put("小钱","B");
        data.put("小李","C");


        //调用方法统计
        count(data);
    }


    public static void count(Map<String,String> data){
        /**
         * 1.创建一个新的Map集合，用来存储统计投票结果
         * 2.便利data集合（key-value）
         * 3.将value拿出来，把value(A)当作key存储到新的集合当中
         * 4.如果A已经存在了，那么将A对应的值+1
         * 5.如果A不存在，那么直接将A---1,存储到新的map中即可
         * 6.遍历新的map集合，打印结果
         */
        Map<String,Integer> resultMap = new HashMap<>();
        data.forEach((k,v)->{
            boolean containsKey = resultMap.containsKey(v);
            if(containsKey){//存在
                //将老的值取出来+1，重新存进去
                int oldCount = resultMap.get(v);
                resultMap.put(v,oldCount+1);
            }else{//不存在
                resultMap.put(v,1);
            }
        });
        //6.遍历新的map集合，打印结果

        resultMap.forEach((k, v) -> {
            System.out.println(k + ":" + v);
        });

    }

}
